package comone.javaone;

public class Demo {
    /*
     面向对象思想：
    *  类：用于描述和定义一类信息的地方
    *     包含：属性，方法
    *  对象：是一个类的，具体的实例，
            用来描述客观事物的一个实体，由一组属性和方法构成
       类和对象的关系：
           类是对象的模板，对象是类的具体实例。

       属性：用于描述事物的特征，可以是各种数据类型。

       方法：
         1:普通方法（刚需）：用来给对象赋予各种动作，可以带参和不带参，带返回值，不带返回值。
         2:构造方法（刚需）：
           特征：
               1)：名称和类型相同
               2)：没有返回值
           作用：
               1)：实例化对象。
               2)：初始化属性的值且能实现实例化独化对象。

           铁原则：构造方法要成对出现
         3:重载方法：（可选）:是业务的需要
            特征：
               1)：发生在同一个类
               2)：方法名称一定相同。
               3):参数列表一定不同：
               4):与返回值无关。
                    参数列表：参数个数，参数类型，参数顺序
           作用：
               1)：丰富方法的行为动作。

         4：传参：
           值传递：传递的是值，在方法的调用过程中，参数值返发生变化，不会影响初始的值。
                -----基本数据类型当形参（String）
           引用传递：传递的是地址，在方法的调用过程中，参数值返发生变化，会影响初始的值。
                -----引用数据类型当形参（除String） 对象，数组

         5：成员变量和局部变量
             成员变量(实例变量)：整个类都可以使用。
                    Java会给成员变量一个初始值
             局部变量：只有在方法内才能访问。
                    Java不会给局部变量赋予初始值

          注意：
                1)：在同一个方法中，不允许有同名局部变量
                    在不同的方法中，可以有同名局部变量
                2)：在同一个类中，成员变量和局部变量同名时，局部变量具有更高的优先级

    * */
}
